.btn-color-theme (@a, @b) {
    background: @a;
    color: @b;
    border-color: @a * 1.2;
    &.lk-btn-ghost,
    &.lk-btn-text {
        color: @a;
    }
    &.button-hover {
        background: fade(@a, 70%);
        color: @b;
    }
}

.lk-btn {
    &::after {
        display: none;
    }
    text-align: center;
    border-radius: @btn-border-radius;
    line-height: 1;
    display: block;
    background: @btn-default-bg;
    border: 1px solid @btn-default-border;
    font-size: @btn-font-size-base;
    padding: @btn-padding-base;
    color: @text-color;
    &.lk-btn-inline {
        display: inline-block;
    }
    &.lk-btn-block {
        display: block;
    }
    &.lk-btn-primary {
        .btn-color-theme(@primary-color, #fff);
    }
    &.lk-btn-info {
        .btn-color-theme(@info-color, #fff);
    }
    &.lk-btn-success {
        .btn-color-theme(@success-color, #fff);
    }
    &.lk-btn-warning {
        .btn-color-theme(@warning-color, #fff);
    }
    &.lk-btn-error {
        .btn-color-theme(@error-color, #fff);
    }
    &.lk-btn-ghost {
        background-color: transparent;
        color: @text-color;
    }
    &.lk-btn-text {
        .lk-btn-inline;
        border-color: transparent;
        background-color: transparent;
        color: @text-color;
    }
    &.lk-btn-small {
        padding: @btn-padding-small;
        font-size: @text-font-size-small;
    }
    &.lk-btn-large {
        padding: @btn-padding-large;
        font-size: @text-font-size-large;
    }
    &.button-hover {
        opacity: .85;
    }
}